↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PrologToPiTRSProof
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
SUBLIST_IN_GA(X, Y) → U1_GA(X, Y, append_in_aga(U, X, V))
SUBLIST_IN_GA(X, Y) → APPEND_IN_AGA(U, X, V)
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → U3_AGA(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
U1_GA(X, Y, append_out_aga(U, X, V)) → U2_GA(X, Y, append_in_gaa(V, W, Y))
U1_GA(X, Y, append_out_aga(U, X, V)) → APPEND_IN_GAA(V, W, Y)
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PrologToPiTRSProof
SUBLIST_IN_GA(X, Y) → U1_GA(X, Y, append_in_aga(U, X, V))
SUBLIST_IN_GA(X, Y) → APPEND_IN_AGA(U, X, V)
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → U3_AGA(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
U1_GA(X, Y, append_out_aga(U, X, V)) → U2_GA(X, Y, append_in_gaa(V, W, Y))
U1_GA(X, Y, append_out_aga(U, X, V)) → APPEND_IN_GAA(V, W, Y)
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PrologToPiTRSProof
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PiDP
↳ PrologToPiTRSProof
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ QDPSizeChangeProof
↳ PiDP
↳ PrologToPiTRSProof
APPEND_IN_GAA(.(Xs)) → APPEND_IN_GAA(Xs)
From the DPs we obtained the following set of size-change graphs:
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PrologToPiTRSProof
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PrologToPiTRSProof
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ NonTerminationProof
↳ PrologToPiTRSProof
APPEND_IN_AGA(Ys) → APPEND_IN_AGA(Ys)
APPEND_IN_AGA(Ys) → APPEND_IN_AGA(Ys)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
SUBLIST_IN_GA(X, Y) → U1_GA(X, Y, append_in_aga(U, X, V))
SUBLIST_IN_GA(X, Y) → APPEND_IN_AGA(U, X, V)
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → U3_AGA(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
U1_GA(X, Y, append_out_aga(U, X, V)) → U2_GA(X, Y, append_in_gaa(V, W, Y))
U1_GA(X, Y, append_out_aga(U, X, V)) → APPEND_IN_GAA(V, W, Y)
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
SUBLIST_IN_GA(X, Y) → U1_GA(X, Y, append_in_aga(U, X, V))
SUBLIST_IN_GA(X, Y) → APPEND_IN_AGA(U, X, V)
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → U3_AGA(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
U1_GA(X, Y, append_out_aga(U, X, V)) → U2_GA(X, Y, append_in_gaa(V, W, Y))
U1_GA(X, Y, append_out_aga(U, X, V)) → APPEND_IN_GAA(V, W, Y)
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PiDP
APPEND_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_GAA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ QDPSizeChangeProof
↳ PiDP
APPEND_IN_GAA(.(Xs)) → APPEND_IN_GAA(Xs)
From the DPs we obtained the following set of size-change graphs:
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
sublist_in_ga(X, Y) → U1_ga(X, Y, append_in_aga(U, X, V))
append_in_aga([], Ys, Ys) → append_out_aga([], Ys, Ys)
append_in_aga(.(X, Xs), Ys, .(X, Zs)) → U3_aga(X, Xs, Ys, Zs, append_in_aga(Xs, Ys, Zs))
U3_aga(X, Xs, Ys, Zs, append_out_aga(Xs, Ys, Zs)) → append_out_aga(.(X, Xs), Ys, .(X, Zs))
U1_ga(X, Y, append_out_aga(U, X, V)) → U2_ga(X, Y, append_in_gaa(V, W, Y))
append_in_gaa([], Ys, Ys) → append_out_gaa([], Ys, Ys)
append_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, append_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, append_out_gaa(Xs, Ys, Zs)) → append_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(X, Y, append_out_gaa(V, W, Y)) → sublist_out_ga(X, Y)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
APPEND_IN_AGA(.(X, Xs), Ys, .(X, Zs)) → APPEND_IN_AGA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ NonTerminationProof
APPEND_IN_AGA(Ys) → APPEND_IN_AGA(Ys)
APPEND_IN_AGA(Ys) → APPEND_IN_AGA(Ys)